What is @types/node-fetch?
The @types/node-fetch npm package provides TypeScript type definitions for the node-fetch library, which is a light-weight module that enables making HTTP requests in Node.js environments similar to the Fetch API provided in the browser. This package does not contain functionality by itself but offers type support for using node-fetch in TypeScript projects, ensuring type safety and IntelliSense in IDEs.
Making HTTP GET Requests
This code demonstrates how to make a simple HTTP GET request to retrieve data from a JSON placeholder API and log it to the console. The @types/node-fetch package provides type definitions for the response object and its methods.
import fetch from 'node-fetch';
async function getTodo() {
const response = await fetch('https://jsonplaceholder.typicode.com/todos/1');
const data = await response.json();
console.log(data);
}
getTodo();
Making HTTP POST Requests
This example shows how to make an HTTP POST request to create a new resource on a JSON placeholder API. It demonstrates setting the request method, body, and headers. The @types/node-fetch package ensures that the properties and methods used are correctly typed.
import fetch from 'node-fetch';
async function createTodo() {
const response = await fetch('https://jsonplaceholder.typicode.com/todos', {
method: 'POST',
body: JSON.stringify({
title: 'foo',
body: 'bar',
userId: 1
}),
headers: { 'Content-Type': 'application/json' }
});
const data = await response.json();
console.log(data);
}
createTodo();